<!DOCTYPE html>
<html lang="en">
  <head>
    <title>CompleteFactoryChainAssembly Class Reference</title>
    <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
    <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
    <meta charset="utf-8">
    <script src="../js/jquery.min.js" defer></script>
    <script src="../js/jazzy.js" defer></script>
    
    <script src="../js/lunr.min.js" defer></script>
    <script src="../js/typeahead.jquery.js" defer></script>
    <script src="../js/jazzy.search.js" defer></script>
  </head>
  <body>

    <a name="//apple_ref/swift/Class/CompleteFactoryChainAssembly" class="dashAnchor"></a>

    <a title="CompleteFactoryChainAssembly Class Reference"></a>

    <header class="header">
      <p class="header-col header-col--primary">
        <a class="header-link" href="../index.html">
          RouteComposer 2.9.0 Docs
        </a>
         (100% documented)
      </p>
    
      <div class="header-col--secondary">
        <form role="search" action="../search.json">
          <input type="text" placeholder="Search documentation" data-typeahead>
        </form>
      </div>
    
    
    </header>

    <p class="breadcrumbs">
      <a class="breadcrumb" href="../index.html">RouteComposer Reference</a>
      <img class="carat" src="../img/carat.png" alt=""/>
      CompleteFactoryChainAssembly Class Reference
    </p>

    <div class="content-wrapper">
      <nav class="navigation">
        <ul class="nav-groups">
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Core%20Entities.html">Core Entities</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Router.html">Router</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/RoutingError.html">RoutingError</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/RoutingError/InitialControllerErrorState.html">– InitialControllerErrorState</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/RoutingError/Context.html">– Context</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DestinationStep.html">DestinationStep</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Finder.html">Finder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Factory.html">Factory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContainerFactory.html">ContainerFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Core%20Entities.html#/s:13RouteComposer6ActionP">Action</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContainerAction.html">ContainerAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/RoutingResult.html">RoutingResult</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/RouteComposerDefaults.html">RouteComposerDefaults</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Tasks.html">Tasks</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/RoutingInterceptor.html">RoutingInterceptor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContextTask.html">ContextTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/PostRoutingTask.html">PostRoutingTask</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Assemblies.html">Assemblies</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/StepAssembly.html">StepAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/SwitchAssembly.html">SwitchAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ChainAssembly.html">ChainAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/CompleteFactoryAssembly.html">CompleteFactoryAssembly</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Additional%20Assemblies.html">Additional Assemblies</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/SingleStep.html">SingleStep</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/SingleContainerStep.html">SingleContainerStep</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Factories.html">Factories</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ClassFactory.html">ClassFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/StoryboardFactory.html">StoryboardFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/FinderFactory.html">FinderFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/NavigationControllerFactory.html">NavigationControllerFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/TabBarControllerFactory.html">TabBarControllerFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/SplitControllerFactory.html">SplitControllerFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/NilFactory.html">NilFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/UIHostingControllerFactory.html">UIHostingControllerFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/UIHostingControllerWithContextFactory.html">UIHostingControllerWithContextFactory</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Finders.html">Finders</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/StackIteratingFinder.html">StackIteratingFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ClassFinder.html">ClassFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/InstanceFinder.html">InstanceFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/NilFinder.html">NilFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/UIHostingControllerWithContextFinder.html">UIHostingControllerWithContextFinder</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Steps.html">Steps</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/GeneralStep.html">GeneralStep</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/NavigationControllerStep.html">NavigationControllerStep</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/TabBarControllerStep.html">TabBarControllerStep</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/SplitControllerStep.html">SplitControllerStep</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../UIViewController%27s%20protocols.html">UIViewController&#39;s protocols</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/RoutingInterceptable.html">RoutingInterceptable</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContainerViewController.html">ContainerViewController</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../General%20Actions.html">General Actions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/GeneralAction.html">GeneralAction</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Logging.html">Logging</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Logger.html">Logger</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/LogMessage.html">LogMessage</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Extras.html">Extras</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/Destination.html">Destination</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extras.html#/s:13RouteComposer14AnyDestinationa">AnyDestination</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/InlineFactory.html">InlineFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/InlineStackIteratingFinder.html">InlineStackIteratingFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/InlineInterceptor.html">InlineInterceptor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/InlineContextTask.html">InlineContextTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/InlinePostTask.html">InlinePostTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/NavigationDelayingInterceptor.html">NavigationDelayingInterceptor</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/NavigationDelayingInterceptor/Strategy.html">– Strategy</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/SingleNavigationRouter.html">SingleNavigationRouter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/GlobalInterceptorRouter.html">GlobalInterceptorRouter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/PresentingFinder.html">PresentingFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/PresentingFinder/StartingPoint.html">– StartingPoint</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ContextSettingTask.html">ContextSettingTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContextAccepting.html">ContextAccepting</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContextAcceptingView.html">ContextAcceptingView</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContextInstantiatable.html">ContextInstantiatable</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ClassWithContextFinder.html">ClassWithContextFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContextChecking.html">ContextChecking</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DismissalMethodProvidingContextTask.html">DismissalMethodProvidingContextTask</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/Dismissible.html">Dismissible</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/DismissibleWithRuntimeStorage.html">DismissibleWithRuntimeStorage</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DetailsNavigationFinder.html">DetailsNavigationFinder</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/CATransaction.html">CATransaction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/DispatchQueue.html">DispatchQueue</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Other%20Guides.html">Other Guides</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../code_of_conduct.html">CODE_OF_CONDUCT</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../contributing.html">CONTRIBUTING</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../examples.html">EXAMPLES</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../readme.html">README</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Other%20Classes.html">Other Classes</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/ActionToStepIntegrator.html">ActionToStepIntegrator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/CompleteFactoryChainAssembly.html">CompleteFactoryChainAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/GenericStepAssembly.html">GenericStepAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Other%20Classes.html#/s:13RouteComposer27IntermediateDestinationStepC">IntermediateDestinationStep</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Classes/SingleNavigationLock.html">SingleNavigationLock</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Other%20Enums.html">Other Enumerations</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/NavigationControllerActions.html">NavigationControllerActions</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/NavigationControllerActions/PushAction.html">– PushAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/NavigationControllerActions/PushAsRootAction.html">– PushAsRootAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/NavigationControllerActions/PushReplacingLastAction.html">– PushReplacingLastAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/SplitViewControllerActions.html">SplitViewControllerActions</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/SplitViewControllerActions/SetAsMasterAction.html">– SetAsMasterAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/SplitViewControllerActions/PushToDetailsAction.html">– PushToDetailsAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/SplitViewControllerActions/PushOnToDetailsAction.html">– PushOnToDetailsAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/TabBarControllerActions.html">TabBarControllerActions</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/TabBarControllerActions/AddTabAction.html">– AddTabAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ViewControllerActions.html">ViewControllerActions</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ViewControllerActions/PresentModallyAction.html">– PresentModallyAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ViewControllerActions/ReplaceRootAction.html">– ReplaceRootAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Enums/ViewControllerActions/NilAction.html">– NilAction</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Other%20Extensions.html">Other Extensions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/Array.html">Array</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/UIHostingController.html">UIHostingController</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/UINavigationController.html">UINavigationController</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/UISplitViewController.html">UISplitViewController</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/UITabBarController.html">UITabBarController</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/UIViewController.html">UIViewController</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Extensions/UIWindow.html">UIWindow</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Other%20Protocols.html">Other Protocols</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/AbstractAction.html">AbstractAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/AbstractFactory.html">AbstractFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ConcreteContainerAdapter.html">ConcreteContainerAdapter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContainerAdapter.html">ContainerAdapter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/ContainerAdapterLocator.html">ContainerAdapterLocator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/CustomContainerViewController.html">CustomContainerViewController</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/InterceptableRouter.html">InterceptableRouter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Other%20Protocols.html#/s:13RouteComposer9NilEntityP">NilEntity</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/SimpleContainerFactory.html">SimpleContainerFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/StackIterator.html">StackIterator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/StackPresentationHandler.html">StackPresentationHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Protocols/WindowProvider.html">WindowProvider</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a class="nav-group-name-link" href="../Other%20Structs.html">Other Structures</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ActionConnectingAssembly.html">ActionConnectingAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CATransactionWrappedAction.html">CATransactionWrappedAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CATransactionWrappedContainerAction.html">CATransactionWrappedContainerAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ChildCoordinator.html">ChildCoordinator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CompleteFactory.html">CompleteFactory</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/ContainerStepChainAssembly.html">ContainerStepChainAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/CustomWindowProvider.html">CustomWindowProvider</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultContainerAdapterLocator.html">DefaultContainerAdapterLocator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultLogger.html">DefaultLogger</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultLogger/LogLevel.html">– LogLevel</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultRouter.html">DefaultRouter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultStackIterator.html">DefaultStackIterator</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultStackIterator/StartingPoint.html">– StartingPoint</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DefaultStackPresentationHandler.html">DefaultStackPresentationHandler</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DispatchQueueWrappedAction.html">DispatchQueueWrappedAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/DispatchQueueWrappedContainerAction.html">DispatchQueueWrappedContainerAction</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/KeyWindowProvider.html">KeyWindowProvider</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/LastStepInChainAssembly.html">LastStepInChainAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/NavigationControllerAdapter.html">NavigationControllerAdapter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/SearchOptions.html">SearchOptions</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/SplitControllerAdapter.html">SplitControllerAdapter</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/StepChainAssembly.html">StepChainAssembly</a>
              </li>
              <li class="nav-group-task">
                <a class="nav-group-task-link" href="../Structs/TabBarControllerAdapter.html">TabBarControllerAdapter</a>
              </li>
            </ul>
          </li>
        </ul>
      </nav>
      <article class="main-content">

        <section class="section">
          <div class="section-content top-matter">
            <h1>CompleteFactoryChainAssembly</h1>
              <div class="declaration">
                <div class="language">
                  
                  <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">class</span> <span class="kt">CompleteFactoryChainAssembly</span><span class="o">&lt;</span><span class="kt">FC</span><span class="p">,</span> <span class="kt">ChildVC</span><span class="o">&gt;</span> <span class="k">where</span> <span class="kt">FC</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></span><span class="p">,</span> <span class="kt">ChildVC</span> <span class="p">:</span> <span class="kt">UIViewController</span></code></pre>

                </div>
              </div>
            <p>Builds the chain of assemblies to fulfill the <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code>.</p>

          </div>
        </section>

        <section class="section">
          <div class="section-content">
            <div class="task-group">
              <div class="task-name-container">
                <a name="/Methods"></a>
                <a name="//apple_ref/swift/Section/Methods" class="dashAnchor"></a>
                <div class="section-name-container">
                  <a class="section-name-link" href="#/Methods"></a>
                  <h3 class="section-name"><span>Methods</span>
</h3>
                </div>
              </div>
              <ul class="item-container">
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:13RouteComposer28CompleteFactoryChainAssemblyC4with_5usingACyx14ViewControllerQyd__Gqd___qd_0_tAA0D0Rd__AA15ContainerActionRd_0_7ContextQyd__AKRtzAFQyd_0_AFRtzr0_lF"></a>
                    <a name="//apple_ref/swift/Method/with(_:using:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:13RouteComposer28CompleteFactoryChainAssemblyC4with_5usingACyx14ViewControllerQyd__Gqd___qd_0_tAA0D0Rd__AA15ContainerActionRd_0_7ContextQyd__AKRtzAFQyd_0_AFRtzr0_lF">with(_:<wbr>using:<wbr>)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Adds a <code><a href="../Protocols/Factory.html">Factory</a></code> that is going to be used as a child</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">func</span> <span class="n">with</span><span class="o">&lt;</span><span class="kt">ChildFC</span><span class="p">:</span> <span class="kt"><a href="../Protocols/Factory.html">Factory</a></span><span class="p">,</span> <span class="kt">A</span><span class="p">:</span> <span class="kt"><a href="../Protocols/ContainerAction.html">ContainerAction</a></span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">childFactory</span><span class="p">:</span> <span class="kt">ChildFC</span><span class="p">,</span> <span class="n">using</span> <span class="nv">action</span><span class="p">:</span> <span class="kt">A</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">CompleteFactoryChainAssembly</span><span class="o">&lt;</span><span class="kt">FC</span><span class="p">,</span> <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">ViewController</span><span class="o">&gt;</span>
    <span class="k">where</span>
    <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">Context</span> <span class="o">==</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">Context</span><span class="p">,</span> <span class="kt">A</span><span class="o">.</span><span class="kt">ViewController</span> <span class="o">==</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">ViewController</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>childFactory</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/Factory.html">Factory</a></code>.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>action</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/Factory.html">Factory</a></code> to be used to integrate the view controller produced by the factory.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:13RouteComposer28CompleteFactoryChainAssemblyC4with_5usingACyx14ViewControllerQyd__Gqd___qd_0_tAA09ContainerD0Rd__AA0K6ActionRd_0_7ContextQyd__AKRtzAFQyd_0_AFRtzr0_lF"></a>
                    <a name="//apple_ref/swift/Method/with(_:using:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:13RouteComposer28CompleteFactoryChainAssemblyC4with_5usingACyx14ViewControllerQyd__Gqd___qd_0_tAA09ContainerD0Rd__AA0K6ActionRd_0_7ContextQyd__AKRtzAFQyd_0_AFRtzr0_lF">with(_:<wbr>using:<wbr>)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Adds a <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code> that is going to be used as a child</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">func</span> <span class="n">with</span><span class="o">&lt;</span><span class="kt">ChildFC</span><span class="p">:</span> <span class="kt"><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></span><span class="p">,</span> <span class="kt">A</span><span class="p">:</span> <span class="kt"><a href="../Protocols/ContainerAction.html">ContainerAction</a></span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">childContainer</span><span class="p">:</span> <span class="kt">ChildFC</span><span class="p">,</span> <span class="n">using</span> <span class="nv">action</span><span class="p">:</span> <span class="kt">A</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">CompleteFactoryChainAssembly</span><span class="o">&lt;</span><span class="kt">FC</span><span class="p">,</span> <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">ViewController</span><span class="o">&gt;</span>
    <span class="k">where</span>
    <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">Context</span> <span class="o">==</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">Context</span><span class="p">,</span> <span class="kt">A</span><span class="o">.</span><span class="kt">ViewController</span> <span class="o">==</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">ViewController</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>childFactory</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code>.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>action</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code> to be used to integrate the view controller produced by the factory.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:13RouteComposer28CompleteFactoryChainAssemblyC4withyACyx14ViewControllerQyd__Gqd__AA0D0Rd__7ContextQyd__AIRtzlF"></a>
                    <a name="//apple_ref/swift/Method/with(_:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:13RouteComposer28CompleteFactoryChainAssemblyC4withyACyx14ViewControllerQyd__Gqd__AA0D0Rd__7ContextQyd__AIRtzlF">with(_:<wbr>)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Adds a <code><a href="../Protocols/Factory.html">Factory</a></code> as the last view controller in the stack.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">func</span> <span class="n">with</span><span class="o">&lt;</span><span class="kt">ChildFC</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">childFactory</span><span class="p">:</span> <span class="kt">ChildFC</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">CompleteFactoryChainAssembly</span><span class="o">&lt;</span><span class="kt">FC</span><span class="p">,</span> <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">ViewController</span><span class="o">&gt;</span> <span class="k">where</span> <span class="kt">ChildFC</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/Factory.html">Factory</a></span><span class="p">,</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">Context</span> <span class="o">==</span> <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">Context</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>childFactory</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/Factory.html">Factory</a></code>.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:13RouteComposer28CompleteFactoryChainAssemblyC4withyACyx14ViewControllerQyd__Gqd__AA09ContainerD0Rd__7ContextQyd__AIRtzlF"></a>
                    <a name="//apple_ref/swift/Method/with(_:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:13RouteComposer28CompleteFactoryChainAssemblyC4withyACyx14ViewControllerQyd__Gqd__AA09ContainerD0Rd__7ContextQyd__AIRtzlF">with(_:<wbr>)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Adds a <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code> as the last view controller in the stack.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">func</span> <span class="n">with</span><span class="o">&lt;</span><span class="kt">ChildFC</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">childContainer</span><span class="p">:</span> <span class="kt">ChildFC</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">CompleteFactoryChainAssembly</span><span class="o">&lt;</span><span class="kt">FC</span><span class="p">,</span> <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">ViewController</span><span class="o">&gt;</span> <span class="k">where</span> <span class="kt">ChildFC</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></span><span class="p">,</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">Context</span> <span class="o">==</span> <span class="kt">ChildFC</span><span class="o">.</span><span class="kt">Context</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>childFactory</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code>.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:13RouteComposer28CompleteFactoryChainAssemblyC6addingyACyxq_Gqd__14ViewControllerQyd__Rs_AA11ContextTaskRd__0J0Qyd__AIRtzlF"></a>
                    <a name="//apple_ref/swift/Method/adding(_:)" class="dashAnchor"></a>
                    <a class="token" href="#/s:13RouteComposer28CompleteFactoryChainAssemblyC6addingyACyxq_Gqd__14ViewControllerQyd__Rs_AA11ContextTaskRd__0J0Qyd__AIRtzlF">adding(_:<wbr>)</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Applies a <code><a href="../Protocols/ContextTask.html">ContextTask</a></code> to the child factory after its <code>UIViewController</code> been built.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">func</span> <span class="n">adding</span><span class="o">&lt;</span><span class="kt">CT</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">contextTask</span><span class="p">:</span> <span class="kt">CT</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">CompleteFactoryChainAssembly</span><span class="o">&lt;</span><span class="kt">FC</span><span class="p">,</span> <span class="kt">ChildVC</span><span class="o">&gt;</span> <span class="k">where</span> <span class="kt">ChildVC</span> <span class="o">==</span> <span class="kt">CT</span><span class="o">.</span><span class="kt">ViewController</span><span class="p">,</span> <span class="kt">CT</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/ContextTask.html">ContextTask</a></span><span class="p">,</span> <span class="kt">FC</span><span class="o">.</span><span class="kt">Context</span> <span class="o">==</span> <span class="kt">CT</span><span class="o">.</span><span class="kt">Context</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>contextTask</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The instance of <code><a href="../Protocols/ContextTask.html">ContextTask</a></code>.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/s:13RouteComposer28CompleteFactoryChainAssemblyC8assembleAA0cD0VyxGyF"></a>
                    <a name="//apple_ref/swift/Method/assemble()" class="dashAnchor"></a>
                    <a class="token" href="#/s:13RouteComposer28CompleteFactoryChainAssemblyC8assembleAA0cD0VyxGyF">assemble()</a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Assembles all the children factories provided and returns a <code><a href="../Protocols/ContainerFactory.html">ContainerFactory</a></code> instance.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">func</span> <span class="nf">assemble</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Structs/CompleteFactory.html">CompleteFactory</a></span><span class="o">&lt;</span><span class="kt">FC</span><span class="o">&gt;</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Return Value</h4>
                        <p>The <code><a href="../Structs/CompleteFactory.html">CompleteFactory</a></code> with child factories provided.</p>
                      </div>
                    </section>
                  </div>
                </li>
              </ul>
            </div>
          </div>
        </section>

      </article>
    </div>
    <section class="footer">
      <p>&copy; 2022 <a class="link" href="https://github.com/ekazaev" target="_blank" rel="external noopener">Evgeny Kazaev</a>. All rights reserved. (Last updated: 2022-10-21)</p>
      <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external noopener">jazzy ♪♫ v0.14.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external noopener">Realm</a> project.</p>
    </section>
  </body>
</html>
